﻿using System;
using System.Collections.Generic;
using Persistencia;
using SearchServer.AppManager;

namespace SearchServer.UI
{
    public partial class MantenimientoBusquedas : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            mensajeError.Text = "";
            Usuario user = (Usuario)Session["Usuario_SIT"];
            if (user!=null && Utilidades.Utilidades.ValidarUsuarioSesion(user))
            {
                BarraNavegacion.Text = Utilidades.Utilidades.CargarLinksVentana(user);
                if (Request.Form["hdnOperacion"] != null && Request.Form["hdnOperacion"] == "EliminarBusqueda")
                {
                    if (Request.Form["hdnIdBusqueda"] != null)
                    {
                        int idbusqueda = Convert.ToInt32(Request.Form["hdnIdBusqueda"]);
                        UserManager usrMgr = UserManager.GetInstancia();
                        try
                        {
                            usrMgr.EliminarBusqueda(user.Id, idbusqueda);
                            mensajeError.Text = "Se ha eliminado correctamente la busqueda seleccionada";
                        }
                        catch (Exception)
                        {
                            mensajeError.Text = "Se ha producido un error al tratar de eliminar la busqueda.";
                        }

                    }
                }
                CargarGrillaBusquedas(user);
            }
            else
            {
                Response.Redirect("Login.aspx", false);
            }
        }

        private void CargarGrillaBusquedas(Usuario user)
        {
            UserManager userManager = UserManager.GetInstancia();
            List<Persistencia.Busqueda> resultado = userManager.ObtenerBusquedasDeUsuario(user.Id);
            tablaResultados.Text = "";
            //Cabezal de la tabla
            tablaResultados.Text += "<tr>";
            tablaResultados.Text += "<td class='gridHeader' style='text-align: center;width: 50%'>";
            tablaResultados.Text += "Nombre";
            tablaResultados.Text += "</td>";
            tablaResultados.Text += "<td class='gridHeader' style='text-align: center;width: 40%;'>";
            tablaResultados.Text += "Fecha";
            tablaResultados.Text += "</td>";
            tablaResultados.Text += "<td class='gridHeader' style='text-align: center;width: 10%'>";
            tablaResultados.Text += "</td>";
            tablaResultados.Text += "</tr>";
            //Fila para cada Distribucion
            int Numero = 0;
            foreach (Persistencia.Busqueda busqueda in resultado)
            {
                if (Numero % 2 == 0)
                {
                    //PAR
                    tablaResultados.Text += "<tr class='gridItem'>";
                }
                else
                {
                    //IMPAR
                    tablaResultados.Text += "<tr class='gridAlternatingItem'>";
                }
                tablaResultados.Text += "<td style='text-align:left; padding-left:5px;'>";
                tablaResultados.Text += busqueda.Texto;
                tablaResultados.Text += "</td>";
                tablaResultados.Text += "<td>";
                tablaResultados.Text += busqueda.Fecha_Creacion.ToString();
                tablaResultados.Text += "</td>";
                tablaResultados.Text += "<td valign='middle'>";
                tablaResultados.Text += "<img id='btnEliminar_" + busqueda.Id + "' src='Imagenes/btnEliminar.png' onclick='EliminarBusqueda(this)' style='cursor: pointer; background-color:transparent;' title='Eliminar' alt='Eliminar'/>";
                tablaResultados.Text += "</td>";
                tablaResultados.Text += "</tr>";
                Numero += 1;
            }
        }
    }
}